
var Utils = require('./Utils.js')
var utils_yys = require('./utils.yys.js')

Utils.init()
sleep(5000)

var yys_obj,tail_dygw

gw_arr = ['鬼王一','鬼王二','鬼王三']
tail_dygw = '       -------地域鬼王-yys.js'
yys_obj = utils_yys.getYysInfo()

yys_obj == undefined? (log('yys_obj error'+tail_dygw),exit()):''

var storage = storages.create('yys')
var num = storage.get('num',3)     // 要击杀的鬼王数量
var times = 40 - storage.get('level',20)   // 要击杀的鬼王等级
var stop = true
var flag = false
var 主界面_flag = 现世妖约界面_flag = 地域鬼王界面_flag = 尚未挑战界面_flag = 我的收藏界面_flag = 挑战界面_flag = 准备界面_flag = 胜利界面_flag = false

while(stop){
    Utils.sleeps()
    if(主界面_flag || Utils.isContain('现世妖约','high')){
        log('主界面：成功')
        if(!主界面_flag){
            utils_yys.isClick(yys_obj.主界面.现世妖约)? log('点击现世妖约：成功'):log('点击现世妖约：失败')
            主界面_flag = true
            Utils.sleeps()
        }
        if(现世妖约界面_flag || Utils.isContain('地域鬼王','high')){
            log('现世妖约界面：成功')
            if(!现世妖约界面_flag){
                utils_yys.isClick(yys_obj.现世妖约界面.地域鬼王)? log('点击地域鬼王：成功'):log('点击地域鬼王：失败')
                现世妖约界面_flag = true
                Utils.sleeps()
            }
            let count = 0
            while(count<num){
                Utils.sleeps()
                if(地域鬼王界面_flag || Utils.isContain('筛选','high')){
                    log('地域鬼王界面：成功')
                    if(!地域鬼王界面_flag){
                        utils_yys.isClick(yys_obj.地域鬼王界面.筛选)? log('点击筛选：成功'):log('点击筛选：失败')
                        地域鬼王界面_flag = true
                        Utils.sleeps()
                    }
                    if(尚未挑战界面_flag || Utils.isContain('尚未','high')){
                        log('尚未挑战界面：成功')
                        if(!尚未挑战界面_flag){
                            utils_yys.isClick(yys_obj.地域鬼王界面.收藏)? log('点击收藏：成功'):log('点击收藏：失败')
                            尚未挑战界面_flag = true
                            Utils.sleeps()
                        }
                        if(我的收藏界面_flag || Utils.isContain('我的收')){
                            log('我的收藏界面：成功')
                            if(!我的收藏界面_flag){
                                utils_yys.isClick(yys_obj.地域鬼王界面[gw_arr[count]])? log('点击'+gw_arr[count]+'：成功'):log('点击'+gw_arr[count]+'：失败')
                                我的收藏界面_flag = true
                                Utils.sleeps()
                            }
                            if(挑战界面_flag || Utils.isContain('难度选择')){
                                log('挑战界面：成功')
                                if(!挑战界面_flag){
                                    if(count==0){
                                        for(let i=0; i<times; i++){
                                            sleep(random(200,500))
                                            utils_yys.isClick(yys_obj.地域鬼王界面.减)
                                            log('减少次数：'+ (i+1))
                                        }
                                        Utils.sleeps()
                                    }
                                    utils_yys.isClick(yys_obj.地域鬼王界面.挑战)? log('挑战'+gw_arr[count]+'：成功'):log('挑战'+gw_arr[count]+'：失败')
                                    挑战界面_flag = true
                                    sleep(random(6000,8000))
                                }
                                if(准备界面_flag || Utils.isContain('点击式神区域')){
                                    log('准备界面：成功')
                                    if(!准备界面_flag){
                                        utils_yys.isClick(yys_obj.其他.准备)? log('准备'+gw_arr[count]+'：成功'):log('准备'+gw_arr[count]+'：失败')
                                        准备界面_flag = true
                                        let temp_time = random(60, 90)
                                        Utils.waitTime(temp_time)
                                    }
                                    if(胜利界面_flag || Utils.isContains(['小组排名','世界排名','已满级'])){
                                        log('胜利界面：成功')
                                        if(!胜利界面_flag){
                                            utils_yys.isClick(yys_obj.地域鬼王界面.上空白)? log('击杀'+gw_arr[count]+'：成功'):log('击杀'+gw_arr[count]+'：失败')
                                            sleep(random(6000,8000))
                                            utils_yys.isClick(yys_obj.地域鬼王界面.下空白)
                                            胜利界面_flag = true
                                            count==(num-1)? stop = false:''
                                            count++
                                            log('count：'+count)
                                            Utils.sleeps()
                                        }
                                        胜利界面_flag && Utils.isContain('难度选择') && utils_yys.isClick(yys_obj.其他.叉号) && (地域鬼王界面_flag = 尚未挑战界面_flag = 我的收藏界面_flag = 挑战界面_flag = 准备界面_flag = 胜利界面_flag = false)
                                        let flag_temp = count==num? true:false
                                        while(flag_temp){
                                            for(let i=0; i<2; i++){
                                                sleep(random(6000,8000))
                                                utils_yys.isClick(yys_obj.其他.返回)
                                            }
                                            flag_temp = false
                                        }
                                    }else{
                                        log('胜利界面：失败')
                                    }
                                }else{
                                    log('准备界面：失败')
                                }
                            }else{
                                log('挑战界面：失败')
                            }
                        }else{
                            log('我的收藏界面：失败')
                        }
                    }else{
                        log('尚未挑战界面：失败')
                        utils_yys.isClick(yys_obj.地域鬼王界面.筛选)? log('点击筛选：成功'):log('点击筛选：失败')
                    }
                }else{
                    log('地域鬼王界面：失败')
                }
            }
        }else{
            log('现世妖约界面：失败')
        }
    }else{
        log('主界面：失败')
    }

}
